package com.matrix.media.entity.Audio;

import com.alibaba.fastjson.annotation.JSONField;
import com.matrix.media.entity.Audio.AudioTrackClip;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


//音频轨素材为纯音频素材或有音频流的视频素材
@NoArgsConstructor
@AllArgsConstructor
@Data
public class DefaultAudioTrackClip extends AudioTrackClip {

    /**
     * 音频轨素材片段对应的IMS内容库媒资ID，或VOD媒资ID。
     * 注：MediaId和MediaURL有且仅有一个不为空。
     */
    private String MediaId;

    /**
     * 音频轨素材片段对应的OSS地址，格式为：
     * https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-object.mp4
     * 注：MediaId和MediaURL有且仅有一个不为空。
     * MediaURL 仅支持OSS外网地址，不支持oss加速地址、cdn地址或其他http url。
     * 示例：https://help.aliyun.com/document_detail/198744.html#section-jqz-po8-d16
     */
    @JSONField(name = "MediaURL")
    private String MediaURL;

    /**
     * 素材片段相对于素材的入点。单位：秒，精确到小数点后4位。如果In不填，默认为0。
     */
    private Float In;

    /**
     * 素材片段相对于素材的出点。单位：秒，精确到小数点后4位。如果Out不填，默认为素材时长。
     */
    private  Float Out;

    /**
     * 音频素材速率，取值范围0.1~100，如：Speed=2，则将音频做2倍速处理，Clip的Duration减半，并合成到成片中。
     *
     * 参考示例：https://help.aliyun.com/document_detail/198744.html#section-40t-rpf-j7x
     */
    private Float Speed;

    /**
     * 素材片段在时间线中循环播放效果。True：循环播放；False（默认值）：正常不循环。
     *
     * 参考示例：https://help.aliyun.com/document_detail/198744.html#title-wi1-mfn-9sx
     */
    private Boolean LoopMode;
}
